package com.uuzz.lottery.agent.gateway.base;

import java.util.HashMap;
import java.util.Map;

public abstract class AbstractGroupCall<I extends IGroupIn,O,SI extends ISupplier<I,?>,CO extends IConvertor<?,O>,C extends IAppendAbleCall<?,?>,CB extends IGroupCallBody<I, O, SI, CO, C>>  extends AbstractFilterCall<I,O> implements IGroupCall<I,O,SI,CO,C,CB>{
	
//	/**
//	 * callMap
//	 */
//	protected final Map<String,CB> callMaps = new HashMap<String,CB>();
//	
//	
//	@Override
//	public void doCall(I in, O out) {
//		String callId = in.getCallId();
//		CB callBody = callMaps.get(callId);
//		C call = callBody.getCall();
//		SI inSupplier = callBody.getInSupplier();
//		CO outConvertor = callBody.getOutConvertor();
//		I2	i2 = (I2) inSupplier.buildFrom(in);
//		@SuppressWarnings("unchecked")
//		O2  o2 = (O2) call.defaultOut(i2);
//	    call.call(i2, o2);
//        outConvertor.convert(o2, out);
//	}

//	@Override
//	public final void init(Map<String, CB>  callBodysMap){
//		
//	}



}
